-
Notifications
You must be signed in to change notification settings - Fork 309
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
nx-cugraph
: add NX_CUGRAPH_AUTOCONFIG=True
env var to enable full zero-code change
#4685
Conversation
…change This is for convenience and sets or updates NETWORKX environment variables.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, I think the choices of what/how to update here is good, especially the (untested) support for older versions.
I do have a few requests, questions, and concerns:
- Since this has a lot of potentially surprising side effects, I think the env var name should be less ambiguous (as you also wondered). I'd say
NX_CUGRAPH_AUTOCONFIG
is much more self-documenting. - I think the value should be
True
/true
/TRUE
instead of just non-empty. I think that matches NetworkX too? Either way, I'd hate someone to set it toFalse
and have it evaluate to True because it's non-empty. - When does this get applied relative to NetworkX processing its env vars? If/when a user sets this and the standard NX vars, what wins, and is that expected?
- concern: I hope this doesn't set a precedent for other backends, since I can already see multiple backends with their own presets clobber each other in fun and mysterious ways. I hope this shows that these can be the expected defaults and we can get back to one env var:
NETWORKX_BACKEND_PRIORITY
. - Unfortunately, I think we need this preset. Early feedback from new users helping with docs indicate that the 3 vars NX now requires for full ZCC is this close 🤏 to being a non-starter.
Thanks for the quick feedback.
👍 I updated it to that. I want "AUTO" in the variable name as well.
Yeah, I think this generally matches networkx.
I think such an "easy-mode" environment variable should only be expected to be useful when using a single backend. I think we can get a lot of mileage out of this. But, yeah, if multiple backends start doing the same thing, clobbering and undefined behavior become possible unless the backends can coordinate. Let's see how it goes.
Yeah, one environment variable is nice. |
nx-cugraph
: add NX_CUGRAPH=True
env var to enable full zero-code changenx-cugraph
: add NX_CUGRAPH_AUTOCONFIG=True
env var to enable full zero-code change
/merge |
I wonder whether (and when) it might make sense to introduce a RAPIDS-wise environment variable (such as |
Updated now that PR ( #4690 ) has merged |
This is for convenience and sets or updates
NETWORKX
environment variables.Do we like
NX_CUGRAPH
as the env var name? What should we consider a true value: "True" (case-insensitive) or a non-empty value?This works with the latest dev version of NetworkX. I have not yet tried it with older NetworkX versions.